---
title: Slack
description: 通过 Slack 发送消息或从 Slack 事件触发工作流
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard 
  type="slack"
  color="#611f69"
  icon={true}
  iconSvg={`<svg className="block-icon" viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg' >
      <g>
        <path
          d='M53.8412698,161.320635 C53.8412698,176.152381 41.8539683,188.139683 27.0222222,188.139683 C12.1904762,188.139683 0.203174603,176.152381 0.203174603,161.320635 C0.203174603,146.488889 12.1904762,134.501587 27.0222222,134.501587 L53.8412698,134.501587 L53.8412698,161.320635 Z M67.2507937,161.320635 C67.2507937,146.488889 79.2380952,134.501587 94.0698413,134.501587 C108.901587,134.501587 120.888889,146.488889 120.888889,161.320635 L120.888889,228.368254 C120.888889,243.2 108.901587,255.187302 94.0698413,255.187302 C79.2380952,255.187302 67.2507937,243.2 67.2507937,228.368254 L67.2507937,161.320635 Z'
          fill='#E01E5A'
        />
        <path
          d='M94.0698413,53.6380952 C79.2380952,53.6380952 67.2507937,41.6507937 67.2507937,26.8190476 C67.2507937,11.9873016 79.2380952,-7.10542736e-15 94.0698413,-7.10542736e-15 C108.901587,-7.10542736e-15 120.888889,11.9873016 120.888889,26.8190476 L120.888889,53.6380952 L94.0698413,53.6380952 Z M94.0698413,67.2507937 C108.901587,67.2507937 120.888889,79.2380952 120.888889,94.0698413 C120.888889,108.901587 108.901587,120.888889 94.0698413,120.888889 L26.8190476,120.888889 C11.9873016,120.888889 0,108.901587 0,94.0698413 C0,79.2380952 11.9873016,67.2507937 26.8190476,67.2507937 L94.0698413,67.2507937 Z'
          fill='#36C5F0'
        />
        <path
          d='M201.549206,94.0698413 C201.549206,79.2380952 213.536508,67.2507937 228.368254,67.2507937 C243.2,67.2507937 255.187302,79.2380952 255.187302,94.0698413 C255.187302,108.901587 243.2,120.888889 228.368254,120.888889 L201.549206,120.888889 L201.549206,94.0698413 Z M188.139683,94.0698413 C188.139683,108.901587 176.152381,120.888889 161.320635,120.888889 C146.488889,120.888889 134.501587,108.901587 134.501587,94.0698413 L134.501587,26.8190476 C134.501587,11.9873016 146.488889,-1.42108547e-14 161.320635,-1.42108547e-14 C176.152381,-1.42108547e-14 188.139683,11.9873016 188.139683,26.8190476 L188.139683,94.0698413 Z'
          fill='#2EB67D'
        />
        <path
          d='M161.320635,201.549206 C176.152381,201.549206 188.139683,213.536508 188.139683,228.368254 C188.139683,243.2 176.152381,255.187302 161.320635,255.187302 C146.488889,255.187302 134.501587,243.2 134.501587,228.368254 L134.501587,201.549206 L161.320635,201.549206 Z M161.320635,188.139683 C146.488889,188.139683 134.501587,176.152381 134.501587,161.320635 C134.501587,146.488889 146.488889,134.501587 161.320635,134.501587 L228.571429,134.501587 C243.403175,134.501587 255.390476,146.488889 255.390476,161.320635 C255.390476,176.152381 243.403175,188.139683 228.571429,188.139683 L161.320635,188.139683 Z'
          fill='#ECB22E'
        />
      </g>
    </svg>`}
/>

{/* MANUAL-CONTENT-START:intro */}
[Slack](https://www.slack.com/) 是一个商业通信平台，为团队提供统一的消息、工具和文件管理场所。

<iframe
  width="100%"
  height="400"
  src="https://www.youtube.com/embed/J5jz3UaWmE8"
  title="Slack Integration with Sim"
  frameBorder="0"
  allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
  allowFullScreen
></iframe>

使用 Slack，您可以：

- **自动化代理通知**：将 Sim 代理的实时更新发送到任何 Slack 频道
- **创建 webhook 端点**：将 Slack 机器人配置为 webhook，以从 Slack 活动中触发 Sim 工作流
- **增强代理工作流**：将 Slack 消息集成到您的代理中，以传递结果、警报和状态更新
- **创建和共享 Slack 画布**：以编程方式在 Slack 频道中生成协作文档（画布）
- **从频道读取消息**：从任何 Slack 频道中检索和处理最近的消息，用于监控或工作流触发

在 Sim 中，Slack 集成使您的代理能够以多种方式通过编程与 Slack 交互，作为其工作流程的一部分：

- **发送消息**：代理可以向任何 Slack 频道或用户发送格式化消息，支持 Slack 的 mrkdwn 语法以实现丰富的格式化。
- **创建画布**：代理可以直接在频道中创建并共享 Slack 画布（协作文档），以实现更丰富的内容共享和文档记录。
- **读取消息**：代理可以读取频道中的最近消息，从而实现监控、报告或根据频道活动触发进一步的操作。

这使得强大的自动化场景成为可能，例如直接向团队的通信中心发送通知、警报、更新和报告，分享结构化文档，或监控对话以触发工作流程。您的代理可以传递及时的信息，分享他们完成的流程结果，创建协作文档，或在需要关注时提醒团队成员。此集成弥合了您的 AI 工作流程与团队通信之间的差距，确保每个人都能在无需手动干预的情况下保持信息同步。通过将 Sim 与 Slack 连接，您可以创建能够在适当时间向团队更新相关信息的代理，通过自动分享见解增强协作，并减少手动状态更新的需求——同时充分利用您的团队已经在使用的 Slack 工作区。

## 使用说明

将 Slack 集成到工作流程中。可以发送消息、创建画布并读取消息。需要 OAuth 授权。可在触发模式下使用，当消息发送到频道时触发工作流程。

## 工具

### `slack_message`

通过 Slack API 向 Slack 频道或用户发送消息。支持 Slack mrkdwn 格式化。

#### 输入

| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法：oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 目标 Slack 频道（例如，#general） |
| `text` | string | 是 | 要发送的消息文本（支持 Slack mrkdwn 格式） |
| `files` | file[] | 否 | 要附加到消息的文件 |

#### 输出

| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `ts` | string | 消息时间戳 |
| `channel` | string | 消息发送的频道 ID |

### `slack_canvas`

在频道中创建并分享 Slack 画布。画布是 Slack 内的协作文档。

#### 输入

| 参数 | 类型 | 是否必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法：oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的令牌 |
| `channel` | string | 是 | 目标 Slack 频道（例如，#general） |
| `title` | string | 是 | 画布的标题 |
| `content` | string | 是 | 画布内容，使用 markdown 格式 |
| `document_content` | object | 否 | 结构化的画布文档内容 |

#### 输出

| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `canvas_id` | string | 创建的画布 ID |
| `channel` | string | 创建画布的频道 |
| `title` | string | 画布的标题 |

### `slack_message_reader`

阅读 Slack 频道中的最新消息。通过筛选选项检索会话历史记录。

#### 输入

| 参数 | 类型 | 必需 | 描述 |
| --------- | ---- | -------- | ----------- |
| `authMethod` | string | 否 | 认证方法：oauth 或 bot_token |
| `botToken` | string | 否 | 自定义 Bot 的 Bot token |
| `channel` | string | 是 | 要读取消息的 Slack 频道（例如：#general） |
| `limit` | number | 否 | 要检索的消息数量（默认：10，最大：100） |
| `oldest` | string | 否 | 时间范围的开始（时间戳） |
| `latest` | string | 否 | 时间范围的结束（时间戳） |

#### 输出

| 参数 | 类型 | 描述 |
| --------- | ---- | ----------- |
| `messages` | array | 频道中的消息对象数组 |

## 注意

- 类别：`tools`
- 类型：`slack`
